13 research outputs found

    Effort estimation of FLOSS projects: A study of the Linux kernel

    Get PDF
    This is the post-print version of the Article. The official published version can be accessed from the link below - Copyright @ 2011 SpringerEmpirical research on Free/Libre/Open Source Software (FLOSS) has shown that developers tend to cluster around two main roles: “core” contributors differ from “peripheral” developers in terms of a larger number of responsibilities and a higher productivity pattern. A further, cross-cutting characterization of developers could be achieved by associating developers with “time slots”, and different patterns of activity and effort could be associated to such slots. Such analysis, if replicated, could be used not only to compare different FLOSS communities, and to evaluate their stability and maturity, but also to determine within projects, how the effort is distributed in a given period, and to estimate future needs with respect to key points in the software life-cycle (e.g., major releases). This study analyses the activity patterns within the Linux kernel project, at first focusing on the overall distribution of effort and activity within weeks and days; then, dividing each day into three 8-hour time slots, and focusing on effort and activity around major releases. Such analyses have the objective of evaluating effort, productivity and types of activity globally and around major releases. They enable a comparison of these releases and patterns of effort and activities with traditional software products and processes, and in turn, the identification of company-driven projects (i.e., working mainly during office hours) among FLOSS endeavors. The results of this research show that, overall, the effort within the Linux kernel community is constant (albeit at different levels) throughout the week, signalling the need of updated estimation models, different from those used in traditional 9am–5pm, Monday to Friday commercial companies. It also becomes evident that the activity before a release is vastly different from after a release, and that the changes show an increase in code complexity in specific time slots (notably in the late night hours), which will later require additional maintenance efforts

    On the Security Cost of Using a Free and Open Source Component in a Proprietary Product

    Get PDF
    The work presented in this paper is motivated by the need to estimate the security effort of consuming Free and Open Source Software (FOSS) components within a proprietary software supply chain of a large European software vendor. To this extent we have identified three different cost models: centralized (the company checks each component and propagates changes to the different product groups), distributed (each product group is in charge of evaluating and fixing its consumed FOSS components), and hybrid (only the least used components are checked individually by each development team). We investigated publicly available factors (\eg, development activity such as commits, code size, or fraction of code size in different programming languages) to identify which one has the major impact on the security effort of using a FOSS component in a larger software product

    OpenMx 2.0:Extended Structural Equation and Statistical Modeling

    Get PDF
    The new software package OpenMx 2.0 for structural equation and other statistical modeling is introduced and its features are described. OpenMx is evolving in a modular direction and now allows a mix-and-match computational approach that separates model expectations from fit functions and optimizers. Major backend architectural improvements include a move to swappable open-source optimizers such as the newly-written CSOLNP. Entire new methodologies such as Item Factor analysis (IRT) and State-space modeling have been implemented. New model expectation functions including support for the expression of models in LISREL syntax and a simplified multigroup expectation function are available. Ease-of-use improvements include helper functions to standardize model parameters and compute their Jacobian-based standard errors, access to model components through standard R $ mechanisms, and improved tab completion from within the R Graphical User Interface

    The Usability of E-learning Platforms in Higher Education: A Systematic Mapping Study

    Get PDF
    The use of e-learning in higher education has increased significantly in recent years, which has led to several studies being conducted to investigate the usability of the platforms that support it. A variety of different usability evaluation methods and attributes have been used, and it has therefore become important to start reviewing this work in a systematic way to determine how the field has developed in the last 15 years. This paper describes a systematic mapping study that performed searches on five electronic libraries to identify usability issues and methods that have been used to evaluate e-learning platforms. Sixty-one papers were selected and analysed, with the majority of studies using a simple research design reliant on questionnaires. The usability attributes measured were mostly related to effectiveness, satisfaction, efficiency, and perceived ease of use. Furthermore, several research gaps have been identified and recommendations have been made for further work in the area of the usability of online learning

    Sponsorship research: drawing on the past to shape the future of sponsorship

    No full text
    Software repositories, such as versioning, bug reporting, and developer mailing list archives contain valuable data for analyzing the history of software projects and its dynamics. In this chapter, we focus on the analysis of the communication and collaboration in software projects and present an approach that works on software archives with social network analysis techniques. Our tool called STNACockpit provides both, a meta-model to represent communication and collaboration and a graph visualization technique to interactively explore instances of the metamodel. These instances are reconstructed from CVS, Bugzilla, and mailing list data. In a case study with the Eclipse Platform Core project data we demonstrate that with STNA-Cockpit one can observe project dynamics for certain periods of time. This allows, for example, project managers to early identify communication bottlenecks, contributor and expertise networks, or to understand how newcomers can be integrated fast and efficiently into their team. Preprint accepted for publication in I. Mistrík et al. (eds.), Collaborative Software Engineering, 265 Springer-Verlag Berlin Heidelberg 2010Software TechnologyElectrical Engineering, Mathematics and Computer Scienc

    Release Early, Release Often and Release on Time. An Empirical Case Study of Release Management

    No full text
    Part 5: Project Management, Development and EvaluationInternational audienceThe dictum of “Release early, release often.” by Eric Raymond as the Linux modus operandi highlights the importance of release management in open source software development. Nevertheless, there are very few empirical studies addressing release management in open source software development. It is already known that most open source software communities adopt either feature-based or time-based release strategies. Each of these has its advantages and disadvantages that are context-specific. Recent research reported that many prominent open source software projects have moved from feature-based to time-based releases. In this longitudinal case study, we narrate how OpenStack shifted towards a liberal six-month release cycle. If prior research discussed why projects should adopt time-based releases and how they can adopt such a strategy, we discuss how OpenStack adapted its software development processes, its organizational design and its tools toward a hybrid release management strategy — a strive for balancing the benefits and drawbacks of feature-based and time-based release strategies

    Automated Bug Assignment : Ensemble-based Machine Learning in Large Scale Industrial Contexts

    Get PDF
    Bug report assignment is an important part of software maintenance. In particular, incorrect assignments of bug reports to development teams can be very expensive in large software development projects. Several studies propose automating bug assignment techniques using machine learning in open source software contexts, but no study exists for large-scale proprietary projects in industry. The goal of this study is to evaluate automated bug assignment techniques that are based on machine learning classification. In particular, we study the state-of-the-art ensemble learner Stacked Generalization (SG) that combines several classifiers. We collect more than 50,000 bug reports from five development projects from two companies in different domains. We implement automated bug assignment and evaluate the performance in a set of controlled experiments. We show that SG scales to large scale industrial application and that it outperforms the use of individual classifiers for bug assignment, reaching prediction accuracies from 50 % to 89 % when large training sets are used. In addition, we show how old training data can decrease the prediction accuracy of bug assignment. We advice industry to use SG for bug assignment in proprietary contexts, using at least 2,000 bug reports for training. Finally, we highlight the importance of not solely relying on results from cross-validation when evaluating automated bug assignment
    corecore